<?php namespace Home\Controller;
use Hdphp\Controller\Controller;
use Hdphp\Cart;
//购物车控制器
class CartController extends Controller{
//	我的购物车
	public function index(){
		$_SESSION['history_url'] = $_SERVER['REQUEST_URI'];
//		sp($_SESSION);
		$data = cart::getAllData(); 
//		sp($data);
//		分配变量
		View::with('session',$data);
		View::make();
	}
//	我的购物车删除商品
	public function del(){
		$id = Q('get.k');
		Cart::del($id);
		go(U('index'));
	}
//	加入购物车（session）
	public function addCart(){
		if(IS_AJAX){
			sp($_POST);
//			商品id
			$gid = Q('post.gid',0,'intval');
//			所选的规格(转成了数组)
			$gaid = explode(',',substr(Q('post.gaid',array()),0,strlen(Q('post.gaid',array()))-1));
//			购买数量
			$buynum = Q('post.num',0,'intval');
//			2、去数据库查询，获取（商品名称，商品原来的价格[不同规格有不同的加价]）
			$goodsData = Db::table('goods')->where("gid={$gid}")->first();
//			sp($goodsData);
//			商品属性表和类型属性表关联
			foreach($gaid as $k =>$v){
				$gaid[$k] = Db::table("goods_attr")->join("type_attr","type_attr_taid","=","taid")->where("gaid={$v}")->first();
			}
//			sp($gaid);
//			组成数组，调用框架方法
//			计算选择不同的规格，不同的总价
			$price = array();
			$price[] = $goodsData['shop_price'];
			foreach($gaid as $k => $v){
				$price[] = $v['add_price'];
			}
//			查询glid(根据gid)
			$strgaid = substr(Q('post.gaid',array()),0,strlen(Q('post.gaid',array()))-1);
			// sp($strgaid);
			$glid = Db::table('goods_lists')->where("goods_lists_gid={$gid} AND combine='{$strgaid}'")->pluck("glid");
//			sp($glid);
//			定义空数组
			$data = array();
			foreach($gaid as $k => $v){
				$data['id'] = $goodsData['gid'];
				$data['name'] = $goodsData['gname'];
				$data['num'] = $buynum;
				$data['glid'] = $glid;
				$data['price'] = array_sum($price);
				$data['options'][$v['taname']] = $v['gavalue'];
				$data['pic'] = $goodsData['lists_pic'];
//				sp($v);
			}
//			sp($data);
//			加入购物车（session）
			cart::add($data);
//			sp($_SESSION);
//			session_destroy();
//			session_unset();
//			组合数组，返回出去
			$jsonData = array(
				'name' => $goodsData['gname'],
				'total' => cart::getTotalNums(),
				'price' => cart::getTotalPrice()
			);
			echo json_encode($jsonData);
			exit;

		}
	}
//	我的购物车，添加购买数量，改变小计
	public function getAjaxmin(){
		if(IS_AJAX){
//			sp($_POST);exit;
//			接收商品添加的数量
			$num = Q('post.num',0,'intval');
//			接收购物车中商品的$k
			$name = Q('post.name');
			$data = array(
				'sid' => $name,
				'num' => $num
			);
			Cart::update($data);
			exit;
/*//			查询购物车中的数据
			$data = cart::getAllData(); 
			$newData = $data['goods'][$name];
//			获取单价（总价除以数量）
			$price = $newData['total'] / $newData['num'];
//			总价
			$totalPrice = cart::getTotalPrice();
//			sp($totalPrice);
//			购物车商品总价，减去，选中的商品的总价。
			$minprice = $totalPrice - $newData['total'];
//			sp($minprice);
//			得到除去该商品总价之后的价格后，在计算该商品的总价
			$thisprice = $price * $num;
//			sp($thisprice);
//			最后将，最终的该商品总价和减去该商品的价格，加一起(就是购物车的商品总价)
			$endprice = $thisprice + $minprice;
			$data = array(
				'xiaoji' => $thisprice,
				'endprice' => $endprice
			);
			echo json_encode($data);*/
			
		}
	}
}
?>